package com.atguigu.gmall.product.client.impl;

import com.alibaba.fastjson.JSONObject;
import com.atguigu.gmall.product.client.ProductFeignClient;
import com.atguigu.gmall.product.model.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import java.math.BigDecimal;
import java.util.List;

/**
 * @author: atguigu
 * @create: 2023-09-02 10:38
 */
@Slf4j
@Component
public class ProductDegradeFeignClient implements ProductFeignClient {
    @Override
    public SkuInfo getSkuInfo(Long skuId) {
        log.error("[商品服务],getSkuInfo业务远程调用失败,执行了服务降级");
        return null;
    }

    @Override
    public BaseCategoryView getCategoryView(Long category3Id) {
        log.error("[商品服务],getCategoryView业务远程调用失败,执行了服务降级");
        return null;
    }

    @Override
    public BigDecimal getSkuPrice(Long skuId) {
        log.error("[商品服务],getSkuPrice业务远程调用失败,执行了服务降级");
        return null;
    }

    @Override
    public List<SpuPoster> getSpuPosterBySpuId(Long spuId) {
        log.error("[商品服务],getSpuPosterBySpuId业务远程调用失败,执行了服务降级");
        return null;
    }

    @Override
    public List<BaseAttrInfo> getAttrListBySkuId(Long skuId) {
        log.error("[商品服务],getAttrListBySkuId业务远程调用失败,执行了服务降级");
        return null;
    }

    @Override
    public List<SpuSaleAttr> getSpuSaleAttrListCheckBySku(Long skuId, Long spuId) {
        log.error("[商品服务],getSpuSaleAttrListCheckBySku业务远程调用失败,执行了服务降级");
        return null;
    }

    @Override
    public String getChangeSkuValueIdsMap(Long spuId) {
        log.error("[商品服务],getChangeSkuValueIdsMap业务远程调用失败,执行了服务降级");
        return null;
    }

    @Override
    public List<JSONObject> getBaseCategoryList() {
        log.error("[商品服务],getBaseCategoryList业务远程调用失败,执行了服务降级");
        return null;
    }

    @Override
    public BaseTrademark getTrademark(Long id) {
        log.error("[商品服务],getTrademark业务远程调用失败,执行了服务降级");
        return null;
    }
}
